package com.appsindy.common.converter;

import com.appsindy.common.util.DateUtils;
import com.appsindy.common.util.StringUtils;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;
import java.util.Map;
import org.apache.struts2.util.StrutsTypeConverter;

public class IntegerConverter extends StrutsTypeConverter {
    
    public Object convertFromString(Map ctx, String[] value, Class arg2) {
        if(value[0] == null || value[0].trim().equals("")) {
            return 0;
        }
        
        try {
            return StringUtils.parseInteger(StringUtils.parseLong(value[0]));
        } catch (Exception pe) {
            System.out.println("=================================== Exception parse Integer fails. value[0] =" + value[0]);
            System.out.println("=================================== Exception parse Integer fails. class =" + arg2);
            pe.printStackTrace();
        }
        return 0;
    }
    
    public String convertToString(Map ctx, Object data) {
        if(data == null) {data = ""; };
        return  StringUtils.toString(data + "");
    }
    
//    public Object convertValue(Map context, Object o, Class toClass) {
//        if (o == null || (o + "").trim().equals("")) {
//            return 0;
//        }
//        
//        try {
//            return StringUtils.parseInteger(StringUtils.parseLong(o + ""));
//        } catch (Exception pe) {
//            System.out.println("=================================== Exception parse Integer fails. value[0] =" + o);
//            System.out.println("=================================== Exception parse Integer fails. class =" + toClass);
//            pe.printStackTrace();
//        }
//        return 0;
//    }
//    
}